const express = require("express");
//一.错误处理中间件  处理错误的 如果有错误那么这个中间件就会执行 否则就不执行
let app = express();

app.use(function (req, res, next) {
  console.log("m1执行了");
  next();
});
app.use(function (req, res, next) {
  console.log("m2执行了");
  next();
  // next(222); // 错误写法 ；
});
app.use(function (req, res, next) {
  console.log("m3执行了");
  next();
});
//定义错误处理中间件

//如果任何一个中间件出现了错误  那么就会进入到这个中间件

app.use(function (err, req, res, next) {
  if (err) {
    return console.log("错误处理中间件执行了", err);
  }
  next();
});
app.get("/", (req, res) => {
  res.send("<h1>主页</h1>");
});
app.get("/users", (req, res) => {
  res.send("<h1>用户</h1>");
});
app.get("/product", (req, res) => {
  res.send("<h1>产品页面</h1>");
});
app.use(function (req, res) {
  //404中间件
  res.sendFile(__dirname + "/404.html");
});
app.listen(8989);
